📘 链上数据索引
&
The Graph 实战
🎯 风格 · 30章全彩目录
⚡ 30 章节
完整版
🧩 子图 · 索引 · 经济
01
Web3数据困境:为什么需要索引?传统方案 vs 链上索引的痛点分析。
数据可用性 · 索引必要性
➔
02
The Graph 协议全景:什么是子图?Graph Node、Indexer、Curator、Delegator角色解析。
角色与经济模型
➔
03
开发环境准备:安装Graph CLI、初始化项目、连接以太坊节点(Infura/Alchemy)。
CLI · 节点配置
➔
04
子图清单(subgraph.yaml):数据源配置、合约地址、网络选择、事件监听。
YAML 核心配置
➔
05
Schema设计(schema.graphql):实体定义、关系映射、@entity、@derivedFrom注解。
GraphQL 模式
➔
06
映射逻辑(mapping.ts)入门:事件处理函数、实体创建与更新、BigInt与Bytes处理。
AssemblyScript 映射
➔
07
AssemblyScript 速成:类型系统、集合操作、与TypeScript的关键差异。
AS 语言基础
➔
08
动态数据源:当合约地址未知时,如何动态创建数据源监听。
运行时数据源
➔
09
IPFS集成:子图部署到IPFS、内容寻址、版本管理。
去中心化存储
➔
10
GraphQL查询入门:query、mutation、subscription、分页与排序。
查询基础
➔
11
高级查询:过滤、聚合、全文搜索、时间加权平均。
复杂查询技巧
➔
12
子图部署与发布:Graph Studio vs 去中心化网络、版本升级策略。
部署工作流
➔
13
Indexer 运行指南:硬件要求、质押GRT、选择子图、收益模型。
索引器操作
➔
14
Curator 经济模型:信号机制、Curve Bonding、回报计算。
策展人经济
➔
15
Delegator 策略:委托GRT给Indexer、风险与收益权衡。
委托策略
➔
16
子图性能优化:实体缓存、批量处理、避免热点键。
性能调优
➔
17
错误处理与调试:日志系统、回滚机制、常见错误码。
调试 & 错误码
➔
18
测试子图:单元测试、集成测试、模拟区块链环境。
测试框架
➔
19
多链支持:以太坊、Polygon、Arbitrum、Optimism、BNB Chain。
多链适配
➔
20
跨链数据聚合:一个子图监听多条链的相同合约。
跨链聚合
➔
21
实时数据流:WebSocket订阅、前端实时更新。
实时推送
➔
22
子图安全:访问控制、防止重入、Gas优化。
安全实践
➔
23
GraphQL API 网关:速率限制、缓存策略、API密钥管理。
网关管理
➔
24
Firehose 与 Substreams:下一代数据流处理框架。
流式处理
➔
25
自定义索引器:修改Graph Node源码、添加自定义逻辑。
深度定制
➔
26
子图市场分析:热门子图、数据质量评估、竞争分析。
市场洞察
➔
27
与前端集成:Apollo Client、URQL、React Hooks。
前端集成
➔
28
与后端集成:Node.js、Python、Go SDK调用子图。
后端SDK
➔
29
实战案例1:构建Uniswap V3交易历史子图。
Uniswap V3
➔
30
实战案例2:构建NFT市场(OpenSea/Blur)订单簿子图。
NFT订单簿
➔